/*
 * Decompiled with CFR 0.150.
 * 
 * Could not load the following classes:
 *  cn.hutool.core.collection.CollUtil
 *  cn.hutool.core.date.DateUtil
 *  cn.hutool.core.util.ObjectUtil
 *  com.alibaba.fastjson.JSON
 *  com.alibaba.fastjson.JSONObject
 *  de.felixroske.jfxsupport.FXMLController
 *  javafx.beans.value.ChangeListener
 *  javafx.beans.value.ObservableValue
 *  javafx.collections.FXCollections
 *  javafx.collections.ObservableList
 *  javafx.event.ActionEvent
 *  javafx.event.EventHandler
 *  javafx.fxml.FXML
 *  javafx.fxml.Initializable
 *  javafx.scene.Node
 *  javafx.scene.control.Alert
 *  javafx.scene.control.Alert$AlertType
 *  javafx.scene.control.Button
 *  javafx.scene.control.CheckBox
 *  javafx.scene.control.ComboBox
 *  javafx.scene.control.Pagination
 *  javafx.scene.control.ScrollPane
 *  javafx.scene.control.TableCell
 *  javafx.scene.control.TableColumn
 *  javafx.scene.control.TableView
 *  javafx.scene.control.TextField
 *  javafx.scene.control.cell.PropertyValueFactory
 *  javafx.scene.input.KeyCode
 *  javafx.scene.input.KeyEvent
 *  javafx.scene.layout.AnchorPane
 *  javafx.scene.layout.VBox
 *  javafx.scene.text.Text
 *  javafx.stage.Modality
 *  javafx.util.Callback
 *  javafx.util.StringConverter
 *  org.springframework.beans.BeanUtils
 *  org.springframework.beans.factory.annotation.Autowired
 *  org.springframework.util.CollectionUtils
 */
package com.gys.controller.baseSetting.saleSchedule;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gys.GysApplication;
import com.gys.common.business.SaleScheduleSettingUtil;
import com.gys.common.data.HttpJson;
import com.gys.common.data.KeyValue;
import com.gys.common.data.PageInfo;
import com.gys.common.plugIn.dateTimePicker.DateTimePicker;
import com.gys.common.util.CacheUtil;
import com.gys.common.util.CommonUtil;
import com.gys.common.util.ConstUtil;
import com.gys.controller.BaseController;
import com.gys.controller.baseSetting.saleSchedule.AddSaleScheduleController;
import com.gys.controller.dataManger.ControllerManger;
import com.gys.controller.index.IndexController;
import com.gys.data.example.GetLoginStoreOutData;
import com.gys.data.example.GetUserOutData;
import com.gys.data.saleScheduleSetting.GetSaleScheduleInData;
import com.gys.data.saleScheduleSetting.GetSaleScheduleOutData;
import com.gys.data.saleScheduleSetting.GetSaleScheduleQueryInData;
import com.gys.view.saleSchedule.AddSaleScheduleView;
import de.felixroske.jfxsupport.FXMLController;
import java.lang.reflect.Method;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.ResourceBundle;
import java.util.Set;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.Node;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.CheckBox;
import javafx.scene.control.ComboBox;
import javafx.scene.control.Pagination;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.VBox;
import javafx.scene.text.Text;
import javafx.stage.Modality;
import javafx.util.Callback;
import javafx.util.StringConverter;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;

@FXMLController
public class SaleScheduleSettingController
extends BaseController
implements Initializable {
    @FXML
    private TextField bc;
    @FXML
    private Button sureBtn;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegBeginTime;
    @FXML
    private Pagination pagination;
    @FXML
    private Button editBtn;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegBrName;
    @FXML
    private Button saveBtn;
    @FXML
    private Button addBtn;
    @FXML
    private ComboBox<KeyValue> emp;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> index;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegId;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEmp5;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEmp4;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEmp3;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEmp2;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEmp1;
    @FXML
    private AnchorPane anchorPane;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegBrId;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegName;
    @FXML
    private TableView<GetSaleScheduleOutData> tableView;
    @FXML
    private TableColumn<GetSaleScheduleOutData, CheckBox> checkBox;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegEndTime;
    @FXML
    private TableColumn<GetSaleScheduleOutData, String> gsegUpdateDate;
    @FXML
    private ScrollPane scrollPane;
    @FXML
    private VBox vBox;
    @Autowired
    private IndexController indexController;
    @Autowired
    private AddSaleScheduleController addSaleScheduleController;
    private Double layoutYSou = null;
    private final int pageSize = ConstUtil.DEFAULT_PAGESIZE_15;
    private final int defaultPageCount = ConstUtil.DEFAULT_PAGECOUNT;
    private ObservableList<GetSaleScheduleOutData> observableTableList = FXCollections.observableArrayList(new ArrayList());
    private ObservableList<KeyValue> empOptions;
    private ObservableList<KeyValue> gsegNameOptions;
    List<KeyValue> emps = new ArrayList<KeyValue>();
    List<GetUserOutData> outDataList = new ArrayList<GetUserOutData>();

    public void initialize(URL location, ResourceBundle resources) {
        this.scrollPane.setPrefWidth(this.getContentWidth());
        this.scrollPane.setPrefHeight(this.getContentHeight());
        this.vBox.setPrefWidth(this.getContentWidth());
        this.vBox.setPrefHeight(this.getContentHeight());
        this.tableView.setPrefWidth(this.getContentWidth());
        this.pagination.setPrefWidth(this.getContentWidth());
        ControllerManger.controllerMap.put(this.getClass().getSimpleName(), this);
        this.comboxInit(this.emp);
        ArrayList<KeyValue> gsegNameOptionList = new ArrayList<KeyValue>();
        gsegNameOptionList.add(new KeyValue("\u65e9\u73ed", "1"));
        gsegNameOptionList.add(new KeyValue("\u4e2d\u73ed", "2"));
        gsegNameOptionList.add(new KeyValue("\u665a\u73ed", "3"));
        gsegNameOptionList.add(new KeyValue("\u901a\u73ed", "0"));
        this.gsegNameOptions = FXCollections.observableArrayList(gsegNameOptionList);
    }

    @Override
    public void init() {
        this.emp.setValue(null);
        this.bc.clear();
        this.indexController.scrollContentPane.setOnKeyReleased((EventHandler)new EventHandler<KeyEvent>(){

            public void handle(KeyEvent e) {
                if (e.getCode() == KeyCode.F1) {
                    SaleScheduleSettingController.this.addAction();
                } else if (e.getCode() == KeyCode.F9) {
                    SaleScheduleSettingController.this.saveAction(null);
                } else if (e.getCode() == KeyCode.ENTER) {
                    SaleScheduleSettingController.this.searchAction(null);
                } else if (e.getCode() == KeyCode.F3) {
                    SaleScheduleSettingController.this.editAction(null);
                } else if (e.getCode() == KeyCode.DELETE) {
                    SaleScheduleSettingController.this.delete();
                }
                e.consume();
            }
        });
        this.emps.clear();
        this.bc.clear();
        this.outDataList.clear();
        GetSaleScheduleInData inData = new GetSaleScheduleInData();
        inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
        inData.setGsegBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        HttpJson httpJson = SaleScheduleSettingUtil.queryUser(CommonUtil.convertToMap(inData));
        if (!httpJson.isSuccess()) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
            alert.showAndWait();
            return;
        }
        this.outDataList = JSON.parseArray((String)httpJson.getMsg(), GetUserOutData.class);
        this.outDataList.forEach(item -> this.emps.add(new KeyValue(item.getLoginName(), item.getUserId())));
        this.emp.setValue(null);
        this.empOptions = FXCollections.observableArrayList(this.emps);
        this.emp.setItems(this.empOptions);
        this.pagination.setPageFactory((Callback)new Callback<Integer, Node>(){

            public Node call(Integer pageNum) {
                return SaleScheduleSettingController.this.initTable(pageNum);
            }
        });
    }

    public void comboxInit(ComboBox box) {
        box.converterProperty().set(new StringConverter<KeyValue>(){

            public String toString(KeyValue object) {
                return object.getName();
            }

            public KeyValue fromString(String string) {
                return null;
            }
        });
    }

    public List<Integer> getSelectIndex() {
        ArrayList<Integer> ids = new ArrayList<Integer>();
        if (!CollectionUtils.isEmpty(this.observableTableList)) {
            for (GetSaleScheduleOutData i : this.observableTableList) {
                if (!i.getCheckBox().isSelected().booleanValue()) continue;
                ids.add(i.getIndex());
            }
        }
        return ids;
    }

    private TableView<GetSaleScheduleOutData> initTable(int pageNum) {
        GetSaleScheduleQueryInData inData = new GetSaleScheduleQueryInData();
        inData.setPageNum(pageNum + 1);
        inData.setPageSize(this.pageSize);
        inData.setBc(this.bc.getText().trim());
        if (ObjectUtil.isNotEmpty(this.emp.getValue())) {
            inData.setEmp(((KeyValue)this.emp.getValue()).getValue());
        }
        PageInfo pageInfo = null;
        HttpJson httpJson = SaleScheduleSettingUtil.selectByPage(CommonUtil.convertToMap(inData));
        if (httpJson.isSuccess()) {
            pageInfo = (PageInfo)JSON.parseObject((String)httpJson.getMsg(), PageInfo.class);
            if (pageInfo != null && !CollectionUtils.isEmpty(pageInfo.getList())) {
                ArrayList<GetSaleScheduleOutData> listTemp = new ArrayList<GetSaleScheduleOutData>();
                for (int i = 0; i < pageInfo.getList().size(); ++i) {
                    String str = JSONObject.toJSONString(pageInfo.getList().get(i));
                    GetSaleScheduleOutData saleScheduleOutData = (GetSaleScheduleOutData)JSONObject.parseObject((String)str, GetSaleScheduleOutData.class);
                    listTemp.add(saleScheduleOutData);
                }
                pageInfo.setList(listTemp);
            }
        } else {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
            alert.showAndWait();
            return new TableView();
        }
        List<GetSaleScheduleOutData> dataList = null;
        if (pageInfo != null && !CollectionUtils.isEmpty(pageInfo.getList())) {
            this.pagination.setPageCount(pageInfo.getPages());
            dataList = pageInfo.getList();
        } else {
            this.pagination.setPageCount(this.defaultPageCount);
            dataList = new ArrayList();
        }
        this.observableTableList.clear();
        this.observableTableList = FXCollections.observableArrayList(dataList);
        this.index.setCellValueFactory((Callback)new PropertyValueFactory(this.index.getId()));
        this.checkBox.setCellValueFactory(cellData -> ((GetSaleScheduleOutData)cellData.getValue()).getCheckBox().getCustomCheckBox());
        this.initCheckBox();
        this.initColumCheckBox();
        this.bingTableCell();
        this.tableView.setItems(this.observableTableList);
        return this.tableView;
    }

    private void bingTableCell() {
        this.gsegBrId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegBrId.getId()));
        this.gsegBrName.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegBrName.getId()));
        this.gsegId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegId.getId()));
        this.gsegName.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegName.getId()));
        this.gsegBeginTime.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegBeginTime.getId()));
        this.gsegEndTime.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEndTime.getId()));
        this.gsegEmp1.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEmp1.getId()));
        this.gsegEmp2.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEmp2.getId()));
        this.gsegEmp3.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEmp3.getId()));
        this.gsegEmp4.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEmp4.getId()));
        this.gsegEmp5.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegEmp5.getId()));
        this.gsegUpdateDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsegUpdateDate.getId()));
    }

    public void initColumCheckBox() {
        this.tableView.getSelectionModel().selectedItemProperty().addListener((ChangeListener)new ChangeListener<GetSaleScheduleOutData>(){

            public void changed(ObservableValue<? extends GetSaleScheduleOutData> observable, GetSaleScheduleOutData oldValue, GetSaleScheduleOutData newValue) {
                if (CollUtil.isEmpty((Collection)SaleScheduleSettingController.this.observableTableList)) {
                    return;
                }
                for (int i = 0; i < SaleScheduleSettingController.this.observableTableList.size(); ++i) {
                    if (i != newValue.getIndex() - 1) continue;
                    ((GetSaleScheduleOutData)SaleScheduleSettingController.this.observableTableList.get(i)).getCheckBox().setSelectStatus(true);
                }
            }
        });
    }

    public void initCheckBox() {
        this.checkBox.setCellFactory(col -> {
            TableCell<GetSaleScheduleOutData, CheckBox> cell = new TableCell<GetSaleScheduleOutData, CheckBox>(){

                protected void updateItem(CheckBox item, boolean empty) {
                    super.updateItem(item, empty);
                    this.setGraphic((Node)item);
                    if (item != null) {
                        item.setOnMouseClicked(col -> {
                            if (CollectionUtils.isEmpty((Collection)SaleScheduleSettingController.this.observableTableList)) {
                                return;
                            }
                        });
                    }
                }
            };
            return cell;
        });
    }

    @FXML
    void searchAction(ActionEvent event) {
        this.refreshTable();
    }

    private void refreshTable() {
        this.initTable(0);
        this.pagination.setCurrentPageIndex(0);
    }

    @FXML
    void editAction(ActionEvent event) {
        List<Integer> indexList = this.getSelectIndex();
        if (ObjectUtil.isEmpty(indexList)) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u8bf7\u9009\u62e9\u8bb0\u5f55");
            alert.showAndWait();
            return;
        }
        this.tableView.setEditable(true);
        this.saveBtn.setDisable(false);
        this.gsegChangeToComBoxEdit(this.gsegName, this.gsegNameOptions, false);
        this.gsegChangeToComBoxEdit(this.gsegEmp1, this.empOptions, true);
        this.gsegChangeToComBoxEdit(this.gsegEmp2, this.empOptions, true);
        this.gsegChangeToComBoxEdit(this.gsegEmp3, this.empOptions, true);
        this.gsegChangeToComBoxEdit(this.gsegEmp4, this.empOptions, true);
        this.gsegChangeToComBoxEdit(this.gsegEmp5, this.empOptions, true);
        this.begAndEndTimeEdit(this.gsegBeginTime);
        this.begAndEndTimeEdit(this.gsegEndTime);
        this.initColumCheckBox();
    }

    public void begAndEndTimeEdit(final TableColumn<GetSaleScheduleOutData, String> column) {
        column.setCellFactory(tc -> {
            TableCell<GetSaleScheduleOutData, String> cell = new TableCell<GetSaleScheduleOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        List<Integer> indexList = SaleScheduleSettingController.this.getSelectIndex();
                        if (indexList.contains(this.getIndex() + 1)) {
                            DateTimePicker dateTimePicker = new DateTimePicker(SaleScheduleSettingController.this.observableTableList.get(this.getIndex()), column.getId(), String.class);
                            dateTimePicker.setTime(chuzhi);
                            this.setGraphic((Node)dateTimePicker);
                        } else {
                            Text text = new Text();
                            text.setText(chuzhi);
                            this.setGraphic((Node)text);
                        }
                    }
                }
            };
            return cell;
        });
    }

    public void gsegChangeToComBoxEdit(TableColumn<GetSaleScheduleOutData, String> column, ObservableList<KeyValue> options, final boolean flag) {
        column.setCellFactory(tc -> {
            final ComboBox combo = new ComboBox();
            combo.setItems(options);
            combo.setEditable(false);
            combo.setMinHeight(30.0);
            this.comboxInit(combo);
            TableCell<GetSaleScheduleOutData, String> cell = new TableCell<GetSaleScheduleOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        List<Integer> indexList = SaleScheduleSettingController.this.getSelectIndex();
                        if (indexList.contains(this.getIndex() + 1)) {
                            if (!flag) {
                                for (int i = 0; i < SaleScheduleSettingController.this.gsegNameOptions.size(); ++i) {
                                    if (!((KeyValue)SaleScheduleSettingController.this.gsegNameOptions.get(i)).getName().equals(chuzhi)) continue;
                                    combo.setValue(SaleScheduleSettingController.this.gsegNameOptions.get(i));
                                }
                            } else {
                                for (int i = 0; i < SaleScheduleSettingController.this.empOptions.size(); ++i) {
                                    if (!((KeyValue)SaleScheduleSettingController.this.empOptions.get(i)).getName().equals(chuzhi)) continue;
                                    combo.setValue(SaleScheduleSettingController.this.empOptions.get(i));
                                }
                            }
                            this.setGraphic((Node)combo);
                        } else {
                            Text text = new Text();
                            text.setText(chuzhi);
                            this.setGraphic((Node)text);
                        }
                    }
                }
            };
            combo.setOnAction(arg_0 -> this.lambda$null$4((TableCell)cell, combo, flag, (ActionEvent) arg_0));
            return cell;
        });
    }

    @FXML
    void saveAction(ActionEvent event) {
        Boolean flag = this.editSave();
        if (!flag.booleanValue()) {
            return;
        }
        this.saveBtn.setDisable(true);
        this.refreshTable();
    }

    private boolean checkSameEmp(Set empSet, String value) {
        if (ObjectUtil.isNotEmpty(value) && !empSet.add(value)) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u540c\u4e00\u4e2a\u73ed\u6b21\u7684\u5458\u5de5\u4e0d\u80fd\u91cd\u590d");
            alert.showAndWait();
            return false;
        }
        return true;
    }

    public boolean editSave() {
        List<Integer> indexList = this.getSelectIndex();
        if (ObjectUtil.isEmpty(indexList)) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u8bf7\u9009\u62e9\u8bb0\u5f55");
            alert.showAndWait();
            return false;
        }
        ArrayList<GetSaleScheduleInData> inData = new ArrayList<GetSaleScheduleInData>();
        for (int i = 0; i < indexList.size(); ++i) {
            Integer item = indexList.get(i);
            GetSaleScheduleOutData data = (GetSaleScheduleOutData)this.observableTableList.get(item - 1);
            data.setGsegUpdateDate(DateUtil.format((Date)DateUtil.date(), (String)"yyyyMMdd"));
            GetUserOutData user = this.getLoginUser();
            data.setGsegUpdateEmp(user.getAccount());
            GetSaleScheduleInData inDataParam = new GetSaleScheduleInData();
            BeanUtils.copyProperties(data, inDataParam);
            HashSet empSet = new HashSet();
            if (!this.checkSameEmp(empSet, inDataParam.getGsegEmpId1())) {
                return false;
            }
            if (!this.checkSameEmp(empSet, inDataParam.getGsegEmpId2())) {
                return false;
            }
            if (!this.checkSameEmp(empSet, inDataParam.getGsegEmpId3())) {
                return false;
            }
            if (!this.checkSameEmp(empSet, inDataParam.getGsegEmpId4())) {
                return false;
            }
            if (!this.checkSameEmp(empSet, inDataParam.getGsegEmpId5())) {
                return false;
            }
            inData.add(inDataParam);
        }
        HashMap<String, Object> param = new HashMap<String, Object>();
        param.put("saleScheduleInData", inData);
        HttpJson httpJson = SaleScheduleSettingUtil.update(param);
        if (!CommonUtil.handleHttpResOnlyAlert(httpJson, "\u66f4\u65b0\u6210\u529f")) {
            return false;
        }
        this.tableView.setEditable(false);
        return true;
    }

    @FXML
    void addAction() {
        this.addSaleScheduleController.init();
        GysApplication.showView(AddSaleScheduleView.class, (Modality)Modality.APPLICATION_MODAL);
    }

    @FXML
    public void delete() {
        List<Integer> indexList = this.getSelectIndex();
        if (ObjectUtil.isEmpty(indexList)) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u8bf7\u9009\u62e9\u8bb0\u5f55");
            alert.showAndWait();
            return;
        }
        ArrayList inData = new ArrayList();
        indexList.forEach(item -> {
            GetSaleScheduleOutData data = (GetSaleScheduleOutData)this.observableTableList.get(item - 1);
            GetSaleScheduleInData inDataParam = new GetSaleScheduleInData();
            BeanUtils.copyProperties(data, inDataParam);
            inData.add(inDataParam);
        });
        HashMap<String, Object> param = new HashMap<String, Object>();
        param.put("saleScheduleInData", inData);
        HttpJson httpJson = SaleScheduleSettingUtil.delete(param);
        CommonUtil.handleHttpResOnlyAlert(httpJson, "\u5220\u9664\u6210\u529f");
        this.refreshTable();
    }

    @FXML
    private void reset() {
        this.bc.clear();
        this.emp.setValue(null);
    }

    public TextField getBc() {
        return this.bc;
    }

    public Button getSureBtn() {
        return this.sureBtn;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegBeginTime() {
        return this.gsegBeginTime;
    }

    public Pagination getPagination() {
        return this.pagination;
    }

    public Button getEditBtn() {
        return this.editBtn;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegBrName() {
        return this.gsegBrName;
    }

    public Button getSaveBtn() {
        return this.saveBtn;
    }

    public Button getAddBtn() {
        return this.addBtn;
    }

    public ComboBox<KeyValue> getEmp() {
        return this.emp;
    }

    public TableColumn<GetSaleScheduleOutData, String> getIndex() {
        return this.index;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegId() {
        return this.gsegId;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEmp5() {
        return this.gsegEmp5;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEmp4() {
        return this.gsegEmp4;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEmp3() {
        return this.gsegEmp3;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEmp2() {
        return this.gsegEmp2;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEmp1() {
        return this.gsegEmp1;
    }

    public AnchorPane getAnchorPane() {
        return this.anchorPane;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegBrId() {
        return this.gsegBrId;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegName() {
        return this.gsegName;
    }

    public TableView<GetSaleScheduleOutData> getTableView() {
        return this.tableView;
    }

    public TableColumn<GetSaleScheduleOutData, CheckBox> getCheckBox() {
        return this.checkBox;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegEndTime() {
        return this.gsegEndTime;
    }

    public TableColumn<GetSaleScheduleOutData, String> getGsegUpdateDate() {
        return this.gsegUpdateDate;
    }

    public ScrollPane getScrollPane() {
        return this.scrollPane;
    }

    public VBox getVBox() {
        return this.vBox;
    }

    public IndexController getIndexController() {
        return this.indexController;
    }

    public AddSaleScheduleController getAddSaleScheduleController() {
        return this.addSaleScheduleController;
    }

    public Double getLayoutYSou() {
        return this.layoutYSou;
    }

    public int getPageSize() {
        return this.pageSize;
    }

    public int getDefaultPageCount() {
        return this.defaultPageCount;
    }

    public ObservableList<GetSaleScheduleOutData> getObservableTableList() {
        return this.observableTableList;
    }

    public ObservableList<KeyValue> getEmpOptions() {
        return this.empOptions;
    }

    public ObservableList<KeyValue> getGsegNameOptions() {
        return this.gsegNameOptions;
    }

    public List<KeyValue> getEmps() {
        return this.emps;
    }

    public List<GetUserOutData> getOutDataList() {
        return this.outDataList;
    }

    public void setBc(TextField bc) {
        this.bc = bc;
    }

    public void setSureBtn(Button sureBtn) {
        this.sureBtn = sureBtn;
    }

    public void setGsegBeginTime(TableColumn<GetSaleScheduleOutData, String> gsegBeginTime) {
        this.gsegBeginTime = gsegBeginTime;
    }

    public void setPagination(Pagination pagination) {
        this.pagination = pagination;
    }

    public void setEditBtn(Button editBtn) {
        this.editBtn = editBtn;
    }

    public void setGsegBrName(TableColumn<GetSaleScheduleOutData, String> gsegBrName) {
        this.gsegBrName = gsegBrName;
    }

    public void setSaveBtn(Button saveBtn) {
        this.saveBtn = saveBtn;
    }

    public void setAddBtn(Button addBtn) {
        this.addBtn = addBtn;
    }

    public void setEmp(ComboBox<KeyValue> emp) {
        this.emp = emp;
    }

    public void setIndex(TableColumn<GetSaleScheduleOutData, String> index) {
        this.index = index;
    }

    public void setGsegId(TableColumn<GetSaleScheduleOutData, String> gsegId) {
        this.gsegId = gsegId;
    }

    public void setGsegEmp5(TableColumn<GetSaleScheduleOutData, String> gsegEmp5) {
        this.gsegEmp5 = gsegEmp5;
    }

    public void setGsegEmp4(TableColumn<GetSaleScheduleOutData, String> gsegEmp4) {
        this.gsegEmp4 = gsegEmp4;
    }

    public void setGsegEmp3(TableColumn<GetSaleScheduleOutData, String> gsegEmp3) {
        this.gsegEmp3 = gsegEmp3;
    }

    public void setGsegEmp2(TableColumn<GetSaleScheduleOutData, String> gsegEmp2) {
        this.gsegEmp2 = gsegEmp2;
    }

    public void setGsegEmp1(TableColumn<GetSaleScheduleOutData, String> gsegEmp1) {
        this.gsegEmp1 = gsegEmp1;
    }

    public void setAnchorPane(AnchorPane anchorPane) {
        this.anchorPane = anchorPane;
    }

    public void setGsegBrId(TableColumn<GetSaleScheduleOutData, String> gsegBrId) {
        this.gsegBrId = gsegBrId;
    }

    public void setGsegName(TableColumn<GetSaleScheduleOutData, String> gsegName) {
        this.gsegName = gsegName;
    }

    public void setTableView(TableView<GetSaleScheduleOutData> tableView) {
        this.tableView = tableView;
    }

    public void setCheckBox(TableColumn<GetSaleScheduleOutData, CheckBox> checkBox) {
        this.checkBox = checkBox;
    }

    public void setGsegEndTime(TableColumn<GetSaleScheduleOutData, String> gsegEndTime) {
        this.gsegEndTime = gsegEndTime;
    }

    public void setGsegUpdateDate(TableColumn<GetSaleScheduleOutData, String> gsegUpdateDate) {
        this.gsegUpdateDate = gsegUpdateDate;
    }

    public void setScrollPane(ScrollPane scrollPane) {
        this.scrollPane = scrollPane;
    }

    public void setVBox(VBox vBox) {
        this.vBox = vBox;
    }

    public void setIndexController(IndexController indexController) {
        this.indexController = indexController;
    }

    public void setAddSaleScheduleController(AddSaleScheduleController addSaleScheduleController) {
        this.addSaleScheduleController = addSaleScheduleController;
    }

    public void setLayoutYSou(Double layoutYSou) {
        this.layoutYSou = layoutYSou;
    }

    public void setObservableTableList(ObservableList<GetSaleScheduleOutData> observableTableList) {
        this.observableTableList = observableTableList;
    }

    public void setEmpOptions(ObservableList<KeyValue> empOptions) {
        this.empOptions = empOptions;
    }

    public void setGsegNameOptions(ObservableList<KeyValue> gsegNameOptions) {
        this.gsegNameOptions = gsegNameOptions;
    }

    public void setEmps(List<KeyValue> emps) {
        this.emps = emps;
    }

    public void setOutDataList(List<GetUserOutData> outDataList) {
        this.outDataList = outDataList;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof SaleScheduleSettingController)) {
            return false;
        }
        SaleScheduleSettingController other = (SaleScheduleSettingController)o;
        if (!other.canEqual(this)) {
            return false;
        }
        TextField this$bc = this.getBc();
        TextField other$bc = other.getBc();
        if (this$bc == null ? other$bc != null : !this$bc.equals(other$bc)) {
            return false;
        }
        Button this$sureBtn = this.getSureBtn();
        Button other$sureBtn = other.getSureBtn();
        if (this$sureBtn == null ? other$sureBtn != null : !this$sureBtn.equals(other$sureBtn)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegBeginTime = this.getGsegBeginTime();
        TableColumn<GetSaleScheduleOutData, String> other$gsegBeginTime = other.getGsegBeginTime();
        if (this$gsegBeginTime == null ? other$gsegBeginTime != null : !this$gsegBeginTime.equals(other$gsegBeginTime)) {
            return false;
        }
        Pagination this$pagination = this.getPagination();
        Pagination other$pagination = other.getPagination();
        if (this$pagination == null ? other$pagination != null : !this$pagination.equals(other$pagination)) {
            return false;
        }
        Button this$editBtn = this.getEditBtn();
        Button other$editBtn = other.getEditBtn();
        if (this$editBtn == null ? other$editBtn != null : !this$editBtn.equals(other$editBtn)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegBrName = this.getGsegBrName();
        TableColumn<GetSaleScheduleOutData, String> other$gsegBrName = other.getGsegBrName();
        if (this$gsegBrName == null ? other$gsegBrName != null : !this$gsegBrName.equals(other$gsegBrName)) {
            return false;
        }
        Button this$saveBtn = this.getSaveBtn();
        Button other$saveBtn = other.getSaveBtn();
        if (this$saveBtn == null ? other$saveBtn != null : !this$saveBtn.equals(other$saveBtn)) {
            return false;
        }
        Button this$addBtn = this.getAddBtn();
        Button other$addBtn = other.getAddBtn();
        if (this$addBtn == null ? other$addBtn != null : !this$addBtn.equals(other$addBtn)) {
            return false;
        }
        ComboBox<KeyValue> this$emp = this.getEmp();
        ComboBox<KeyValue> other$emp = other.getEmp();
        if (this$emp == null ? other$emp != null : !this$emp.equals(other$emp)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$index = this.getIndex();
        TableColumn<GetSaleScheduleOutData, String> other$index = other.getIndex();
        if (this$index == null ? other$index != null : !this$index.equals(other$index)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegId = this.getGsegId();
        TableColumn<GetSaleScheduleOutData, String> other$gsegId = other.getGsegId();
        if (this$gsegId == null ? other$gsegId != null : !this$gsegId.equals(other$gsegId)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEmp5 = this.getGsegEmp5();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEmp5 = other.getGsegEmp5();
        if (this$gsegEmp5 == null ? other$gsegEmp5 != null : !this$gsegEmp5.equals(other$gsegEmp5)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEmp4 = this.getGsegEmp4();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEmp4 = other.getGsegEmp4();
        if (this$gsegEmp4 == null ? other$gsegEmp4 != null : !this$gsegEmp4.equals(other$gsegEmp4)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEmp3 = this.getGsegEmp3();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEmp3 = other.getGsegEmp3();
        if (this$gsegEmp3 == null ? other$gsegEmp3 != null : !this$gsegEmp3.equals(other$gsegEmp3)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEmp2 = this.getGsegEmp2();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEmp2 = other.getGsegEmp2();
        if (this$gsegEmp2 == null ? other$gsegEmp2 != null : !this$gsegEmp2.equals(other$gsegEmp2)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEmp1 = this.getGsegEmp1();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEmp1 = other.getGsegEmp1();
        if (this$gsegEmp1 == null ? other$gsegEmp1 != null : !this$gsegEmp1.equals(other$gsegEmp1)) {
            return false;
        }
        AnchorPane this$anchorPane = this.getAnchorPane();
        AnchorPane other$anchorPane = other.getAnchorPane();
        if (this$anchorPane == null ? other$anchorPane != null : !this$anchorPane.equals(other$anchorPane)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegBrId = this.getGsegBrId();
        TableColumn<GetSaleScheduleOutData, String> other$gsegBrId = other.getGsegBrId();
        if (this$gsegBrId == null ? other$gsegBrId != null : !this$gsegBrId.equals(other$gsegBrId)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegName = this.getGsegName();
        TableColumn<GetSaleScheduleOutData, String> other$gsegName = other.getGsegName();
        if (this$gsegName == null ? other$gsegName != null : !this$gsegName.equals(other$gsegName)) {
            return false;
        }
        TableView<GetSaleScheduleOutData> this$tableView = this.getTableView();
        TableView<GetSaleScheduleOutData> other$tableView = other.getTableView();
        if (this$tableView == null ? other$tableView != null : !this$tableView.equals(other$tableView)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, CheckBox> this$checkBox = this.getCheckBox();
        TableColumn<GetSaleScheduleOutData, CheckBox> other$checkBox = other.getCheckBox();
        if (this$checkBox == null ? other$checkBox != null : !this$checkBox.equals(other$checkBox)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegEndTime = this.getGsegEndTime();
        TableColumn<GetSaleScheduleOutData, String> other$gsegEndTime = other.getGsegEndTime();
        if (this$gsegEndTime == null ? other$gsegEndTime != null : !this$gsegEndTime.equals(other$gsegEndTime)) {
            return false;
        }
        TableColumn<GetSaleScheduleOutData, String> this$gsegUpdateDate = this.getGsegUpdateDate();
        TableColumn<GetSaleScheduleOutData, String> other$gsegUpdateDate = other.getGsegUpdateDate();
        if (this$gsegUpdateDate == null ? other$gsegUpdateDate != null : !this$gsegUpdateDate.equals(other$gsegUpdateDate)) {
            return false;
        }
        ScrollPane this$scrollPane = this.getScrollPane();
        ScrollPane other$scrollPane = other.getScrollPane();
        if (this$scrollPane == null ? other$scrollPane != null : !this$scrollPane.equals(other$scrollPane)) {
            return false;
        }
        VBox this$vBox = this.getVBox();
        VBox other$vBox = other.getVBox();
        if (this$vBox == null ? other$vBox != null : !this$vBox.equals(other$vBox)) {
            return false;
        }
        IndexController this$indexController = this.getIndexController();
        IndexController other$indexController = other.getIndexController();
        if (this$indexController == null ? other$indexController != null : !(this$indexController).equals(other$indexController)) {
            return false;
        }
        AddSaleScheduleController this$addSaleScheduleController = this.getAddSaleScheduleController();
        AddSaleScheduleController other$addSaleScheduleController = other.getAddSaleScheduleController();
        if (this$addSaleScheduleController == null ? other$addSaleScheduleController != null : !(this$addSaleScheduleController).equals(other$addSaleScheduleController)) {
            return false;
        }
        Double this$layoutYSou = this.getLayoutYSou();
        Double other$layoutYSou = other.getLayoutYSou();
        if (this$layoutYSou == null ? other$layoutYSou != null : !(this$layoutYSou).equals(other$layoutYSou)) {
            return false;
        }
        if (this.getPageSize() != other.getPageSize()) {
            return false;
        }
        if (this.getDefaultPageCount() != other.getDefaultPageCount()) {
            return false;
        }
        ObservableList<GetSaleScheduleOutData> this$observableTableList = this.getObservableTableList();
        ObservableList<GetSaleScheduleOutData> other$observableTableList = other.getObservableTableList();
        if (this$observableTableList == null ? other$observableTableList != null : !this$observableTableList.equals(other$observableTableList)) {
            return false;
        }
        ObservableList<KeyValue> this$empOptions = this.getEmpOptions();
        ObservableList<KeyValue> other$empOptions = other.getEmpOptions();
        if (this$empOptions == null ? other$empOptions != null : !this$empOptions.equals(other$empOptions)) {
            return false;
        }
        ObservableList<KeyValue> this$gsegNameOptions = this.getGsegNameOptions();
        ObservableList<KeyValue> other$gsegNameOptions = other.getGsegNameOptions();
        if (this$gsegNameOptions == null ? other$gsegNameOptions != null : !this$gsegNameOptions.equals(other$gsegNameOptions)) {
            return false;
        }
        List<KeyValue> this$emps = this.getEmps();
        List<KeyValue> other$emps = other.getEmps();
        if (this$emps == null ? other$emps != null : !(this$emps).equals(other$emps)) {
            return false;
        }
        List<GetUserOutData> this$outDataList = this.getOutDataList();
        List<GetUserOutData> other$outDataList = other.getOutDataList();
        return !(this$outDataList == null ? other$outDataList != null : !(this$outDataList).equals(other$outDataList));
    }

    protected boolean canEqual(Object other) {
        return other instanceof SaleScheduleSettingController;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        TextField $bc = this.getBc();
        result = result * 59 + ($bc == null ? 43 : $bc.hashCode());
        Button $sureBtn = this.getSureBtn();
        result = result * 59 + ($sureBtn == null ? 43 : $sureBtn.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegBeginTime = this.getGsegBeginTime();
        result = result * 59 + ($gsegBeginTime == null ? 43 : $gsegBeginTime.hashCode());
        Pagination $pagination = this.getPagination();
        result = result * 59 + ($pagination == null ? 43 : $pagination.hashCode());
        Button $editBtn = this.getEditBtn();
        result = result * 59 + ($editBtn == null ? 43 : $editBtn.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegBrName = this.getGsegBrName();
        result = result * 59 + ($gsegBrName == null ? 43 : $gsegBrName.hashCode());
        Button $saveBtn = this.getSaveBtn();
        result = result * 59 + ($saveBtn == null ? 43 : $saveBtn.hashCode());
        Button $addBtn = this.getAddBtn();
        result = result * 59 + ($addBtn == null ? 43 : $addBtn.hashCode());
        ComboBox<KeyValue> $emp = this.getEmp();
        result = result * 59 + ($emp == null ? 43 : $emp.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $index = this.getIndex();
        result = result * 59 + ($index == null ? 43 : $index.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegId = this.getGsegId();
        result = result * 59 + ($gsegId == null ? 43 : $gsegId.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEmp5 = this.getGsegEmp5();
        result = result * 59 + ($gsegEmp5 == null ? 43 : $gsegEmp5.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEmp4 = this.getGsegEmp4();
        result = result * 59 + ($gsegEmp4 == null ? 43 : $gsegEmp4.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEmp3 = this.getGsegEmp3();
        result = result * 59 + ($gsegEmp3 == null ? 43 : $gsegEmp3.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEmp2 = this.getGsegEmp2();
        result = result * 59 + ($gsegEmp2 == null ? 43 : $gsegEmp2.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEmp1 = this.getGsegEmp1();
        result = result * 59 + ($gsegEmp1 == null ? 43 : $gsegEmp1.hashCode());
        AnchorPane $anchorPane = this.getAnchorPane();
        result = result * 59 + ($anchorPane == null ? 43 : $anchorPane.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegBrId = this.getGsegBrId();
        result = result * 59 + ($gsegBrId == null ? 43 : $gsegBrId.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegName = this.getGsegName();
        result = result * 59 + ($gsegName == null ? 43 : $gsegName.hashCode());
        TableView<GetSaleScheduleOutData> $tableView = this.getTableView();
        result = result * 59 + ($tableView == null ? 43 : $tableView.hashCode());
        TableColumn<GetSaleScheduleOutData, CheckBox> $checkBox = this.getCheckBox();
        result = result * 59 + ($checkBox == null ? 43 : $checkBox.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegEndTime = this.getGsegEndTime();
        result = result * 59 + ($gsegEndTime == null ? 43 : $gsegEndTime.hashCode());
        TableColumn<GetSaleScheduleOutData, String> $gsegUpdateDate = this.getGsegUpdateDate();
        result = result * 59 + ($gsegUpdateDate == null ? 43 : $gsegUpdateDate.hashCode());
        ScrollPane $scrollPane = this.getScrollPane();
        result = result * 59 + ($scrollPane == null ? 43 : $scrollPane.hashCode());
        VBox $vBox = this.getVBox();
        result = result * 59 + ($vBox == null ? 43 : $vBox.hashCode());
        IndexController $indexController = this.getIndexController();
        result = result * 59 + ($indexController == null ? 43 : ($indexController).hashCode());
        AddSaleScheduleController $addSaleScheduleController = this.getAddSaleScheduleController();
        result = result * 59 + ($addSaleScheduleController == null ? 43 : ($addSaleScheduleController).hashCode());
        Double $layoutYSou = this.getLayoutYSou();
        result = result * 59 + ($layoutYSou == null ? 43 : ($layoutYSou).hashCode());
        result = result * 59 + this.getPageSize();
        result = result * 59 + this.getDefaultPageCount();
        ObservableList<GetSaleScheduleOutData> $observableTableList = this.getObservableTableList();
        result = result * 59 + ($observableTableList == null ? 43 : $observableTableList.hashCode());
        ObservableList<KeyValue> $empOptions = this.getEmpOptions();
        result = result * 59 + ($empOptions == null ? 43 : $empOptions.hashCode());
        ObservableList<KeyValue> $gsegNameOptions = this.getGsegNameOptions();
        result = result * 59 + ($gsegNameOptions == null ? 43 : $gsegNameOptions.hashCode());
        List<KeyValue> $emps = this.getEmps();
        result = result * 59 + ($emps == null ? 43 : ($emps).hashCode());
        List<GetUserOutData> $outDataList = this.getOutDataList();
        result = result * 59 + ($outDataList == null ? 43 : ($outDataList).hashCode());
        return result;
    }

    public String toString() {
        return "SaleScheduleSettingController(bc=" + this.getBc() + ", sureBtn=" + this.getSureBtn() + ", gsegBeginTime=" + this.getGsegBeginTime() + ", pagination=" + this.getPagination() + ", editBtn=" + this.getEditBtn() + ", gsegBrName=" + this.getGsegBrName() + ", saveBtn=" + this.getSaveBtn() + ", addBtn=" + this.getAddBtn() + ", emp=" + this.getEmp() + ", index=" + this.getIndex() + ", gsegId=" + this.getGsegId() + ", gsegEmp5=" + this.getGsegEmp5() + ", gsegEmp4=" + this.getGsegEmp4() + ", gsegEmp3=" + this.getGsegEmp3() + ", gsegEmp2=" + this.getGsegEmp2() + ", gsegEmp1=" + this.getGsegEmp1() + ", anchorPane=" + this.getAnchorPane() + ", gsegBrId=" + this.getGsegBrId() + ", gsegName=" + this.getGsegName() + ", tableView=" + this.getTableView() + ", checkBox=" + this.getCheckBox() + ", gsegEndTime=" + this.getGsegEndTime() + ", gsegUpdateDate=" + this.getGsegUpdateDate() + ", scrollPane=" + this.getScrollPane() + ", vBox=" + this.getVBox() + ", indexController=" + this.getIndexController() + ", addSaleScheduleController=" + this.getAddSaleScheduleController() + ", layoutYSou=" + this.getLayoutYSou() + ", pageSize=" + this.getPageSize() + ", defaultPageCount=" + this.getDefaultPageCount() + ", observableTableList=" + this.getObservableTableList() + ", empOptions=" + this.getEmpOptions() + ", gsegNameOptions=" + this.getGsegNameOptions() + ", emps=" + this.getEmps() + ", outDataList=" + this.getOutDataList() + ")";
    }

    private void lambda$null$4(TableCell cell, ComboBox combo, boolean flag, ActionEvent e) {
        int rank = cell.getIndex();
        String cloumName = cell.getId();
        String value = ((KeyValue)combo.getValue()).getValue();
        String name = ((KeyValue)combo.getValue()).getName();
        GetSaleScheduleOutData outData = (GetSaleScheduleOutData)this.observableTableList.get(rank);
        String methodName = CommonUtil.getSetMethod(cloumName);
        try {
            Method method = GetSaleScheduleOutData.class.getMethod(methodName, String.class);
            method.invoke(outData, name);
            if (flag) {
                Method methodval = GetSaleScheduleOutData.class.getMethod(methodName.replace("setGsegEmp", "setGsegEmpId"), String.class);
                methodval.invoke(outData, value);
            } else {
                Method methodval = GetSaleScheduleOutData.class.getMethod(methodName + "Id", String.class);
                methodval.invoke(outData, value);
            }
        }
        catch (Exception ex) {
            throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
        }
    }
}

